package com.example.demo.dto.common;

import com.alibaba.fastjson.annotation.JSONField;


/**
 * 前后端通用的 Input / Output 数据交换Model
 */
public class ConsultHistoryModel {
    public final static String CONSULTANTHISTORY = "consultant_history";

    public final static String CONSULTANTHISTORYLISTNAME = "advice_history_list";

    public static final String ID = "id";
    public static final String DURATION = "duration";
    public static final String TIME = "time";
    public static final String HADEVALUATED = "had_evaluated";
    public static final String CONSULTTYPE = "consult_type";
    public static final String EVALUATESCORE = "evaluate_score";
    public static final String EVALUATETEXT = "evaluate_text";

    //历史ID
    private String id="";

    //用户
    private UserModel user = null;

    //咨询师
    private ConsultantModel consultant= null;

    //时长
    private String duration="";

    //开始时间
    private String time="";

    //用户是否已经评价
    private String hadEvaluated="";

    //咨询师总结
    private String consultType="";

    //用户评价分数
    private String evaluateScore="";

    //用户评价内容
    private String evaluateText="";

    public ConsultHistoryModel(){}

    public ConsultHistoryModel(String id, UserModel user, ConsultantModel consultant,
                               String duration, String time, String hadEvaluated,
                               String consultType, String evaluateScore, String evaluateText) {
        this.id = id;
        this.user = user;
        this.consultant = consultant;
        this.duration = duration;
        this.time = time;
        this.hadEvaluated = hadEvaluated;
        this.consultType = consultType;
        this.evaluateScore = evaluateScore;
        this.evaluateText = evaluateText;
    }

    @JSONField(name = EVALUATESCORE)
    public String getEvaluateScore() {
        return evaluateScore;
    }

    @JSONField(name = EVALUATESCORE)
    public void setEvaluateScore(String evaluateScore) {
        this.evaluateScore = evaluateScore;
    }

    @JSONField(name = EVALUATETEXT)
    public String getEvaluateText() {
        return evaluateText;
    }

    @JSONField(name = EVALUATETEXT)
    public void setEvaluateText(String evaluateText) {
        this.evaluateText = evaluateText;
    }

    @JSONField(name = ID)
    public String getId() {
        return id;
    }

    @JSONField(name = ID)
    public void setId(String id) {
        this.id = id;
    }

    @JSONField(name = UserModel.USERINFO_NAME)
    public UserModel getUser() {
        return user;
    }

    @JSONField(name = UserModel.USERINFO_NAME)
    public void setUser(UserModel user) {
        this.user = user;
    }

    @JSONField(name = ConsultantModel.CONSULTANTINFO_NAME)
    public ConsultantModel getConsultant() {
        return consultant;
    }

    @JSONField(name = ConsultantModel.CONSULTANTINFO_NAME)
    public void setConsultant(ConsultantModel consultant) {
        this.consultant = consultant;
    }

    @JSONField(name = DURATION)
    public String getDuration() {
        return duration;
    }

    @JSONField(name = DURATION)
    public void setDuration(String duration) {
        this.duration = duration;
    }

    @JSONField(name = TIME)
    public String getTime() {
        return time;
    }

    @JSONField(name = TIME)
    public void setTime(String time) {
        this.time = time;
    }

    @JSONField(name = HADEVALUATED)
    public String getHadEvaluated() {
        return hadEvaluated;
    }

    @JSONField(name = HADEVALUATED)
    public void setHadEvaluated(String hadEvaluated) {
        this.hadEvaluated = hadEvaluated;
    }

    @JSONField(name = CONSULTTYPE)
    public String getConsultType() {
        return consultType;
    }

    @JSONField(name = CONSULTTYPE)
    public void setConsultType(String consultType) {
        this.consultType = consultType;
    }

    @Override
    public String toString() {
        return "ConsultHistoryModel{" +
                "id='" + id + '\'' +
                ", user=" + user +
                ", consultant=" + consultant +
                ", duration='" + duration + '\'' +
                ", time='" + time + '\'' +
                ", hadEvaluated='" + hadEvaluated + '\'' +
                ", consultType='" + consultType + '\'' +
                ", evaluateScore='" + evaluateScore + '\'' +
                ", evaluateText='" + evaluateText + '\'' +
                '}';
    }
}
